Peak selection for self correlation analysis of cardiac rate in an implantable medical devices

ABSTRACT

Self-correlation enhancements and implementations are described. In particular, certain examples demonstrate the use of a peak selector to identify peaks of a self-correlation function which serve as candidate cardiac rates for an implantable medical device. The approach may enable an alternative calculation of cardiac rate in an implantable medical device as a stand-alone rate detector or as a double-check of other rate calculations.

CROSS-REFERENCE TO RELATED PATENT DOCUMENTS

The present application is a continuation of U.S. patent applicationSer. No. 14/819,851, filed on Aug. 6, 2015, which claims the benefit ofand priority to each of U.S. Provisional Patent Application No.62/038,440, filed Aug. 18, 2014, and titled CALCULATION OFSELF-CORRELATION IN AN IMPLANTABLE CARDIAC DEVICE, U.S. ProvisionalPatent Application No. 62/038,437, filed Aug. 18, 2014, and titledCARDIAC RATE TRACKING IN AN IMPLANTABLE MEDICAL DEVICE, and U.S.Provisional Patent Application No. 62/038,438, filed Aug. 18, 2014, andtitled PEAK SELECTION FOR SELF CORRELATION ANALYSIS OF CARDIAC RATE INAN IMPLANTABLE MEDICAL DEVICE, the disclosures of which are incorporatedherein by reference. The present application is also related to U.S.patent application Ser. No. 14/819,889, titled CALCULATION OFSELF-CORRELATION IN AN IMPLANTABLE CARDIAC DEVICE, now U.S. Pat. No.9,451,893, and U.S. patent application Ser. No. 14/819,817, titledCARDIAC RATE TRACKING IN AN IMPLANTABLE MEDICAL DEVICE, now U.S. Pat.No. 9,451,892, the disclosures of which are incorporated herein byreference.

BACKGROUND

Implantable defibrillators are designed to deliver an electricalstimulus to terminate certain deleterious arrhythmias. Such devices mustcorrectly identify dangerous arrhythmias (sensitivity). They must alsoavoid delivering electrical stimulus when not desired (specificity).Attaining high sensitivity and specificity in the discrimination of suchdeleterious arrhythmias is a challenge.

Typically treatable arrhythmias include ventricular fibrillation (VF)and/or polymorphic ventricular tachycarrhythmia (PVT). Other arrhythmiascan include monomorphic ventricular tachyarrhythmia (MVT), atrialfibrillation (AF), and atrial flutter (Flutter), with the atrialarrhythmias of AF and Flutter deemed supraventricular tachyarrhythmias(SVT). For some patients, MVT is treated by the implantabledefibrillator using anti-tachycardia pacing (ATP), while AF and Flutterare typically addressed by other therapies entirely. In addition,patients can experience exercise induced ventricular tachycardia (VT),which is typically not treated at all. Some patients experience bundlebranch blocks and other conditions that can arise at elevated rates,causing the signal shape (morphology) of the cardiac signal with eachcardiac beat to change relative to morphology at slower rates.Implantable devices are expected to appropriately distinguish thesevarious conditions and apply the correct therapy for only certainconditions.

Chen et al., in Ventricular Fibrillation Detection By A Regression TestOn The Autocorrelation Function, Med Biol Eng Comput.; 25 (3): 241-9(May, 1987), discuss the use of an autocorrelation function (ACF) toidentify ventricular fibrillation in which the ACF is performed. Chen etal. hypothesize that the peaks in the ACF output are expected to beperiodic and/or regular and should pass a linear regression test when aventricular tachycardia (VT) is occurring. Therefore, the results of theACF are subjected to a linear regression analysis and VF is declared ifthe linear regression fails to find a linear fit. Chen et al. limittheir analysis to VF and VT and do not address the fact that the linearregression they discuss would also likely fail for supraventriculararrhythmias such as atrial flutter or atrial fibrillation for whichdefibrillation therapy is typically not desired. Moreover, adding alinear regression test with ACF would create a very large computationalburden for an implantable system.

Sweeney et al., in U.S. Pat. Nos. 8,409,107 and/or 8,521,276 discuss theuse of an ACF applied to a transformation of detected cardiac signalusing curve matching. The ACF would be applied to identify recurringcurves. Such recurring curves could be used to find heart beats from thetransformed signal, which could be used to calculate rate. ACF is notdirectly applied to the time varying cardiac signal, however.

ACF in each of these examples involves a large number of computationalsteps to be calculated. To make ACF more useful in an implantabledevice, simplified methods and alternative methods which address thespectrum of potential arrhythmias are desired.

OVERVIEW

The present inventor has recognized, among other things, that a problemto be solved can include the incorporation of a modified autocorrelationfunction into an implantable cardiac device. Modifications can be madeto reduce the computational burden of the correlation function andaccommodate some of the difficulties which arise in the context of animplantable device monitoring cardiac function. The present subjectmatter can help provide a solution to the problem of enhancingsensitivity and specificity in implantable cardiac rhythm managementdevices.

The present invention comprises several separately implementableelements which provide avenues for reliable use of ACF at lessercomputational burden in an implantable device.

In a first aspect, the invention comprises a set of rules for thecalculation of a Minimum Absolute Difference (MAD) function to constructa Self Correlation. The use of MAD facilitates a far simpler and lesscomputationally intensive manner of analyzing the cardiac signal thanACF.

In a second aspect, the invention comprises a set of rules for theidentification and selection of candidate peaks within a SelfCorrelation or ACF to yield an estimate of heart rate.

In a third aspect, the present invention comprises a set of rules fortracking cardiac rate over time using output peaks from either a SelfCorrelation or ACF.

The first, second and third aspects may each be used independent of theother aspects, or in any suitable combination such as first-second,first-third, or second-third.

In a fourth aspect, the present invention comprises an integrated systemor method in which a simplified Self Correlation of the first aspect iscombined with the second and third aspects.

In various embodiments, devices and methods may use any of the firstthrough fourth aspects either on a continuing basis or following atriggering event.

The present disclosure is, in certain examples, directed to enhancementsthat aid in selecting peaks within the results of a self-correlationfunction. The self-correlation function can take the form of asimplified ACF, such as an MAD, including for example methods of U.S.Provisional Patent Application No. 62/038,440, titled CALCULATION OFSELF-CORRELATION IN AN IMPLANTABLE CARDIAC DEVICE, though the results ofmore complex calculations can also be used. Tracking analysis, such asthat in U.S. Provisional Patent Application No. 62/038,437, titledCARDIAC RATE TRACKING IN AN IMPLANTABLE MEDICAL DEVICE, may use theresults of peak selection to provide a rate estimate for use in therapyand other decisions over time, with added confidence based on repeatedpeak selection. However, other examples omit tracking and select fromavailable peaks of the self-correlation function to provide estimatedcardiac rates

The peak selection enhancements assist in the generation of a rateoutput from data which can be variable in response to noise and otherinputs which can complicate the extraction of cardiac rate from signalsdetected by an implantable system. Beyond noise and extraneous inputs,the cardiac signal itself can be variable, particularly given thatimplantable systems are provided to patients having a variety of cardiacdiseases or abnormalities which take various forms and states.

This overview is intended to provide an overview of subject matter ofthe present patent application. It is not intended to provide anexclusive or exhaustive explanation of the invention. The detaileddescription is included to provide further information about the presentpatent application.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, which are not necessarily drawn to scale, like numeralsmay describe similar components in different views. Like numerals havingdifferent letter suffixes may represent different instances of similarcomponents. The drawings illustrate generally, by way of example, butnot by way of limitation, various embodiments discussed in the presentdocument.

FIG. 1 shows a subcutaneously implanted cardiac treatment system;

FIG. 2 shows a transvenously implanted cardiac treatment system;

FIG. 3 shows an overall method for generating a cardiac rate estimate;

FIGS. 4-5 illustrate the analysis of data using a self-correlationfunction and differentiate such analysis from ACF;

FIGS. 6-7 illustrate the analysis of R[n] peaks to identify candidatecardiac rates and a cardiac rate estimate;

FIGS. 8A-8B illustrate one method of tracking cardiac rate;

FIG. 9 illustrates tracking of cardiac rate over time;

FIGS. 10-13 demonstrate several cardiac rate tracking steps usinghypothetical examples;

FIG. 14 illustrates a dominant peak test for peak selection in FIG. 6;

FIG. 15 illustrates a high rate peak test for the peak selection in FIG.6;

FIG. 16 illustrates an analysis to identify a bigemini pattern andcorrect rate analysis;

FIG. 17 illustrates an analysis to identify jitter and correct rateanalysis;

FIGS. 18A-18B illustrate different scenarios linking together thecalculation of R[n], Peak Selector, Tracker, and Therapy Decisionblocks; and

FIG. 19 is a block flow diagram for an overall method of cardiac signalanalysis.

DETAILED DESCRIPTION

FIGS. 1-2 show implant locations for illustrative cardiac systems. Thepresent invention may find application in a subcutaneous-only system asillustrated in FIG. 1, or in a transvenous system as shown in FIG. 2.Alternatives may include systems having multiple subcutaneous,transvenous and/or intracardiac elements, epicardial systems, or fullyintravenous or intracardiac systems.

The illustrative system shown in FIG. 1 is shown relative to a heart 10and is intended to convey a subcutaneous implant that would take placeover the ribs of the patient and beneath the patient's skin. A canister12 is implanted near the left axilla, with lateral, anterior, orposterior positions being possible. A lead 14 couples the canister 12 toelectrodes 16, 18 and 20, which are illustrated as implanted along thesternum of the patient, typically to the left or right thereof. Thesystem in FIG. 1 may include an external programmer 22 configured forcommunication with the implant 12.

The system in FIG. 2 is a transvenous system, illustratively shownrelative to the heart 30 again with the patient's ribs omitted forclarity. The canister 32 is in a high pectoral position, with the lead34 accessing the vasculature and entering the heart. The lead 34 mayinclude a superior vena cava coil electrode 36, a right ventricular coilelectrode 38, and one or two ventricular sense/pace electrodes 40, 42.Again a programmer is shown at 44 and configured for communication withthe implanted system. The system may further include a left ventricularlead (not shown).

Communication for either of the systems in FIG. 1 or 2 may be inductive,RF, direct (that is, using the patient's own tissue as a communicationmedium), or via any other suitable medium of communication. Suchcommunication can be useful to configure the implanted system forsensing, therapy or other feature, to load new software or firmware forthe implanted system, and to retrieve information about system operationsuch as device status, therapy history, diagnostic data (both device andpatient related), or other suitable data. The programmers may containsuch circuitry as is needed to provide processing, memory, display,telemetry/RF communications and the like for these noted purposes.

The canisters in FIGS. 1 and 2 will typically contain operationalcircuitry for the implantable system. The operational circuitry mayinclude a controller and any suitable analog and/or digital circuitsneeded for signal processing, memory storage and generation ofhigh-power electrical, low-power electrical and/or non-electricaloutputs. For example, an analog to digital converter (ADC) can be adirect conversion ADC, a successive approximation ADC, a ramp comparingADC, a Wilkinson ADC, an integrating, dual slope or multi-slope ADC, apipeline ADC, or a sigma-delta ADC. Other ADC types, a modificationsand/or hybrids of any of these types, may instead be used as thoseskilled in the art will appreciate.

The operational circuitry may be coupled to suitable battery technologyfor an implantable device, with any of numerous examples well known inthe art, and may use various capacitor technologies to assist in theshort term build-up and/or storage of energy for defibrillation or otherhigh output purposes. The leads and external shell for the canisters canbe manufactured with various materials suitable for implantation, suchas those widely known, along with coatings for such materials,throughout the art. For example, the canisters can be made usingtitanium, with a titanium nitride or iridium oxide (or other material)coating if desired, and the lead can be formed with a polymeric materialsuch as a polyether, polyester, polyamide, polyurethane orpolycarbonate, or other material such as silicon rubber. The electrodescan be formed of suitable materials as well, such as silver, gold,titanium or stainless steel such as MP35N stainless steel alloy, orother materials.

The location of system implant may vary. For example, the system shownin FIG. 1 is a subcutaneous-only system located on the anterior andlateral chest between the skin and ribcage of the patient. Othersubcutaneous only systems (including systems without a lead 14, withmultiple leads 14, or an array in place of lead 14) may be used withother anterior only placements and/or anterior-posterior, posterioronly, left-right, etc. locations, including, for example, locationsnoted in U.S. Pat. Nos. 6,647,292, 6,721,597, 7,149,575, 7,194,302, eachof which is incorporated herein by reference, and other locations aswell. Subcutaneous placement can include any location between the skinand ribcage, including sub-muscular.

Illustrative transvenous systems, in addition to that of FIG. 2, includesingle chamber, dual chamber and biventricular systems. A fullyintravenous system has also been proposed. Additional or other coatingsor materials than those noted above may be used, particularly forepicardial, transvenous or intravenous systems, leads and canisters.Systems may further include an implantable “seed” that can attachdirectly to the myocardium without a lead at all. Some systems maycombine an implantable, intracardiac seed with a subcutaneous-onlydefibrillator, with the seed and defibrillator enabled for two-waycommunication such as commanded therapy delivery and/or conveyance ofsensed data.

Various alternatives and details for these designs, materials andimplantation approaches are known to those skilled in the art.Commercially available systems in which the above methods can beperformed or which may be configured to perform such methods are knownincluding the Boston Scientific Teligen™ ICD and S-ICD™ System,Medtronic Concerto™ and Virtuoso™ systems, and St. Jude Medical Promote™RF and Current™ RF systems. Such platforms include numerous examples andalternatives for the various system elements.

As shown and described there are various ways in which an implantablecardiac rhythm management device or system may be implemented withrespect to the current invention. In several examples, the methods anddevices that are focused upon in the present invention include theability to capture and analyze a far-field cardiac signal. Some examplesof far-field signals include a signal captured between twosubcutaneously placed electrodes, or between a canister electrode and anintracardiac electrode. Near field signals and/or signals generated as acombination of near and far field signals may be assessed in otheralternatives.

FIG. 3 shows an overall method for generating a cardiac rate estimate. Afunction “R[n]” is calculated. The function, R, may be, for example, aself-correlation function as illustrated in FIGS. 4-5, below. Thefunction R represents a series of comparisons performed by calculating arelatively large number (50 or more) comparisons between a comparatorthat is a portion of a signal, and the overall signal itself, where thecomparisons are performed by repeatedly shifting the comparator relativeto the overall signal.

R is discussed herein as a discrete function, rather than as acontinuous function; in other examples, R may be a continuous function.In an example, R[n] may be a function that can be called periodically orit may be generated on a continuing basis. Briefly referring to FIG. 5,an illustrative R[n] as calculated at a selected point in time is shownat 140, based on a scrolling comparison of a comparator 122 to a buffer120, the buffer 120 having length M and comparator a length M/2,providing R[n] a length of M/2. One could think of R[n,t], where n hasvalues representing an individual calculation of R at a time t. Forexample, FIG. 10 shows three “R” functions—at each of t1, t2 and t3, Rwas calculated for n=0 to 400.

Using R[n] as calculated from step 60, a number of candidate peaks areidentified at 62. FIGS. 6-7 provide examples of the identification ofcandidate peaks. Candidate peaks can be understood as representing apotential “rate” of cardiac events. A high match, as represented by apeak in R[n], suggests alignment of the cyclic electrical waveformsassociated with a heartbeat. For example, if a peak of R[n] occurs atn=90, and the sampling rate is 256 Hz, then the time between R[0] andthe peak would be 90/256=352 ms. For this example, shifting thecomparator back in time by 352 ms generates a relatively higher matchbetween the comparator and the original signal. The 352 ms can bereferred to as the lag depth, and if it truly is the interval betweensuccessive R-waves, it would correspond to 171 beats per minute (bpm).

Next the method determines whether a valid track exists, at 64. Trackingis the process of monitoring the outputs of the R[n] calculation andpeaks therefrom to determine whether a high-confidence cardiac rate canbe reported. FIGS. 8A-8B show an illustrative method of rate tracking.FIG. 9 shows another approach to rate tracking.

If a track already exists, the method includes determining whether toconfirm one of the candidate peaks, as shown at 66. If no track exists,then peak tracking is performed as shown at 68 to determine whether anew valid track can be declared. Next, following either 66 or 68, themethod concludes the iteration shown by reporting a rate and confidence.

In some instances, no high confidence rate will be reported. Forexample, an atrial arrhythmia that is conducted to the ventricles may becharacterized by unstable periods between ventricular depolarizations.As a result, the measured ventricular rate can be highly variable. Whenthe ventricular rate is highly variable, R[n] may produce onlyrelatively low peaks, or may not produce consistently similar peaksduring iterative calculations. As a result, the output rate from theentire procedure may either be missing or may be reported with only lowconfidence at block 70. FIGS. 10-13 illustrate an example showingseveral iterations of the method of FIG. 3.

In an example, the output rate and confidence can be used to confirm orcall into question the cardiac rate as calculated using a moreconventional process. For example, a device may use a default beatdetection scheme in which the received cardiac signal, followingamplification and filtering, is compared to a detection threshold. Someillustrative beat detection approaches are shown in, for example, U.S.Pat. Nos. 8,565,878 and 5,709,215, the disclosures of which areincorporated herein by reference. Crossings of the detection thresholdcan then be presumed to represent beats or R-waves, and various knownmethods can be used to identify and eliminate detection thresholdcrossings that are caused by noise or overdetections. See, for example,U.S. Pat. Nos. 7,248,921, 8,160,686, 8,160,687, 8,265,737, and8,744,555, the disclosures of which are incorporated herein byreference.

The remaining detected beats or R-waves, and intervals therebetween, canbe used to calculate rate. The present invention, in some embodiments,is used to double-check the rate calculated using such methods. Suchdouble checking can be called as needed or provided on a continuingbasis. For example, a double check may be performed to confirm rateprior to therapy delivery, or prior to preparations for therapydelivery. In some embodiments, the present invention may provide a rateestimate which can override the rate as calculated using other methodssuch as beat detection.

In another example, a double check may be performed to confirm accurateevent detection as a way of verifying a sensing configuration where, ifthe sensing configuration is not verified, a sensing vector may bechanged. In other embodiments, elements of the present invention can beused to provide rate calculation by default, or may be the sole sourceof rate calculations.

FIGS. 4-5 illustrate analysis of data using a self-correlation functionand differentiate such analysis from ACF. Certain additional options andexamples can be found in U.S. Provisional Patent Application No.62/038,440, titled CALCULATION OF SELF-CORRELATION IN AN IMPLANTABLECARDIAC DEVICE.

FIG. 4 shows a sensed ECG signal at 100. The signal can be treated as abuffer of length M, as shown at 102. The calculation of R[1], R[2] . . .R[M−1] is illustrated at 104. Each calculation of R[n] is performed, inordinary ACF, by multiplying (via dot product) a portion of the bufferand a portion of the comparator, with the comparator shifted in timerelative to the buffer. The comparator itself is simply a copy of theoriginal buffer. Because of the shifting in time, a correction factor isneeded as shown at 106, since the dot product is calculated using fewerand fewer data points as the overlap is reduced in size with eachsuccessive calculation of R[n]. The shifting of the comparator may bereferred to as a lag depth.

A first simplification is to replace the multiplication to calculate adot product with subtraction. The absolute value of the subtractionresult yields a Minimum Absolute Difference (MAD). Swapping the dotproduct out and instead using MAD will reduce the number of requiredcalculations by an order of magnitude or more, with minimal reduction inaccuracy.

Next, to eliminate the correction factor for overlap 106, the buffer110, having length M, is divided in half, to provide a sample portionM/2 and an available lag depth 114. Then the iterative comparisonsidentify the area of difference between the sample 112 and the buffer110. As shown at 116, the result is M/2 total comparisons from a lagdepth of zero to a lag depth of M/2.

An additional simplification may be performed in some embodiments bycompressing the input data. For example, a system may performanalog-to-digital conversion of the cardiac signal at a rate of 256 Hz.The calculation of R[n] maybe performed on a limited or compressedversion of the original signal, reducing the number of calculationsagain (though at the cost of calculations needed for downsampling, whichmay already be performed to facilitate data storage).

Turning to FIG. 5, an example calculation of R[n] at a particular pointin time is shown. The ECG is shown at 120, as stored by a buffer havinga length M. The comparator for the self-correlation is shown at 122, andcomprises the half of the buffer 120 having the most recently detectedsamples. Preferably, the length of M is enough such that at least 2beats will fit within the comparator during benign rate (such as 60bpm). Thus in an illustrative example, the buffer 120 has a length ofabout 4 seconds and the comparator 122 has a length of about 2 seconds.Another example has a buffer 120 length of about 2 seconds and acomparator 122 with a length of about 1 second. Other sizes may be used.In some examples, the invention is characterized by having a bufferlarge enough to ensure at least two cardiac cycles occurring at adefined lowest needed rate would be captured, where the lowest neededrate may be in the range of 60-120 bpm. In further illustrations, thebuffer length could be from 1.5 to 6 seconds and the comparator lengthis between 750 milliseconds and 3 seconds. In the examples shown herein,the comparator is half the length of the buffer; in other examples, thecomparator may be between one-tenth to one-half of the overall bufferlength.

As shown at 124, an MAD function is applied in this example, and is thennormalized using the maximum of the MAD across all of the comparisonsmade for a particular iteration of R[n]. This yields a result that isgraphed at 126. The resulting graph includes a peak at 130, whichcorresponds to the zero lag depth calculation, during which the MADwould be zero, giving an output of 1. The next peaks 132, 134 and 136each correspond to points in time where the MAD is calculated while theR-wave peaks in the comparator are aligned with a set of R-wave peaksfrom the buffer. For example, if peak 138 of the comparator is alignedwith peak 140 of the buffer, this would also align the adjacent peaks ifthe R-wave intervals are similar, giving a small absolute difference atthat particular alignment. In the analysis, the zero lag depthcalculation is typically ignored.

Other peak alignments between the comparator 122 and the buffer 120 maygenerate lesser peaks in R[n]. For example, peak 142 occurs when peak138 of the comparator is aligned with the T-wave at 144. Thispositioning creates a smaller MAD output which, once normalized usingformula 124, would generate a noticeable but small peak in R[n].

The R[n] function may be calculated periodically. In one example,because the buffer and comparator take up fairly large blocks of time,such as more than one second or even two seconds, there is no need tocontinuously recalculate R[n]. For example, the period betweenrecalculations of R[n] may be approximately the duration of thecomparator, or, in another example, approximately half the duration ofthe comparator. For example, if the comparator length is 2 seconds, thebuffer may be 4 seconds long and the calculation of R[n] could beperformed at one second intervals. Thus, every second, the buffer wouldbe updated and the comparator reformed, and the sequence of comparisonand time shifting would be repeated. FIG. 10, for example, showsrepeated calculation of R[n] at t1, t2, and t3, hence, R[n,t1], R[n,t2],and R[n,t3] are shown at 200 of that figure.

The illustrative examples in the various Figures herein suggest the useof an asynchronous calculation of R[n]. These are asynchronous insofaras the calculation is not linked or synchronized to a beat detectionperformed by some other method. Other embodiments may instead use abeat-synchronous update or recalculation of R[n]. A hybrid embodimentmay update synchronously to take advantage ofmicroprocessor/microcontroller wakeup caused by beat detection, but maylimit calculation of R[n] to occur no more frequently than some desiredmetric. For example, calculation of R[n] may be beat synchronized atintervals of no less than one second.

The optional simplifications in FIGS. 4-5 are provided for explanationand illustrative purposes. However, these simplifications can be omittedin some embodiments, as the peak selection and/or tracking examplesshown below are not contingent on any particular type of calculation forR[n] unless otherwise stated.

FIGS. 6-7 illustrate the analysis of R[n] peaks to identify candidatecardiac rates and a cardiac rate estimate. FIG. 6 shows the operation ina flow diagram, while FIG. 7 provides a graphic example.

In FIG. 6, beginning at block 150, the method starts with theidentification of any peaks within R[n,tk]. In this example, peaks thatare within 50% of the largest peak and that meet some minimum sizecriteria are reported forward to a peak tracker, as indicated at 152.Tracking may be performed as shown below in FIGS. 8A-8B and 9, forexample.

A set of largest candidates are then selected, as indicated at 154. Inan illustrative example, a threshold may be set within the scaledcalculation of R. For example, using the formula 124 in FIG. 5, thethreshold for candidate peaks may be set at R=0.3, such that in order tobe considered a candidate, a peak must be larger than 0.3 times thelargest peak. The largest peak will always occur at R[0], as that iswhen the comparator and buffer are perfectly aligned and thus R[0]=1.Any subsequent peak greater than 0.3 may be a candidate peak. In anexample, up to five of the largest peaks greater than 0.3 (excluding thepeak at R[0]) are treated as candidates.

As shown at 156, if any of the largest candidates have a lag depth whichwould place the candidate in the “tachy zone”, a tachy flag is set. Acandidate peak is in the “tachy zone” if the lag depth of the peak isrelatively small. This may be identified by asking whether there is apeak at R[nt] where nt is less than a tachy threshold. For example, ifthe tachy zone flag is to be set for candidate peaks suggesting a rateabove 160 bpm, and the sampling rate is 256 Hz, then a peak at n<96 isin the tachy zone, since the peak occurs with a lag depth of less than375 ms equating to a rate above 160 bpm. The tachy flag, if set,indicates that the analysis suggests possible tachycardia, regardlessthe rate it ultimately concludes is most likely correct.

Next, a first candidate peak is selected as shown at 158. Either of tworules for finding the candidate peak can apply: a peak having a lagdepth that allows a rate to be found that is greater than 75 bpm andwhich is larger than the first-in-time peak by a chosen limit, delta,can be chosen, as shown at 160 or, otherwise, the first-in-time peak ofthe candidate peaks is chosen, as shown at 162. The first-in-time peakis the candidate peak having the least lag depth. The first rule, at160, allows a peak which is significantly larger than the first-in-timecandidate peak to be selected, as long as it is above a rate threshold.In the example, the rate threshold is at 75 bpm; other thresholds may beused.

In the illustrative example, the combination of 160 and 162 ensure thatpeaks associated with higher rates will be analyzed first and, to thisextent, biases the method to seek out higher rate candidates. A biastoward higher rates may be desirable to minimize the risk of heart rateunderestimation in the presence of a tachyarrhythmia.

Next, the candidate peak is analyzed by looking for and counting“pickets”, as shown at 164. The pickets are peaks at multiples of thelag depth of the candidate peak. FIG. 7 shows an example of pickets. Afirst peak is found at a lag depth of 110 samples (corresponding to 140bpm sampled at 256 Hz). This lag depth gives an R-R interval as shown at180. Two pickets can be identified by observing additional peaks at lagdepths of 220 samples and 330 samples, which are multiples of the lagdepth of the candidate. The pickets at 182 and 184 provide confirmationthat the 140 bpm rate is likely the correct cardiac rate.

The counting of pickets can include an allowance for some variation inpeak spacing. For example, the picket peaks should be equally spaced,within a maximum tolerance. The tolerance can be defined as a functionof the calculated heart rate, or may be set in terms of milliseconds orsamples (n). For example, if a first peak is at a lag of 80 samples (313milliseconds at 256 Hz), a picket would be expected to appear between 75and 85 samples away (293 milliseconds to 332 milliseconds). A narroweror wider tolerance may be defined in other examples.

It should be noted in this example that the largest peak is not thefirst selected candidate peak. There are two reasons why this is so:first, the largest peak is not sufficiently large relative to thecandidate peak to meet rule 160. In an example, to select a peak otherthan the first peak as a candidate, the later peak needed to be at least30% larger than the candidate (making delta relative), which is not thecase here. In another example, delta may be a fixed value, such as 0.2using the MAD formula 124 from FIG. 5.

Second, the largest peak is at a lag depth corresponding to a rate of 70bpm, again not meeting rule 160. In the example, to select a peak otherthan the first peak as a candidate, the later peak needed to be at a lagdepth corresponding to a rate greater than 75 bpm. Other thresholds maybe chosen. The picket determination may require that the peaks used toestablish subsequent pickets be among the largest N peaks or that eachpeak be larger than a predetermined threshold, such as a peak above 0.35or 0.50 using the formula at 124 in FIG. 5.

Both of rules 160, 162 can be modified in other examples.

For illustrative purposes, FIG. 7 also illustrates a tachy zone 186. Thetachy zone, in this example, covers a lag depth from zero to aboutninety. This corresponds to an offset of up to ninety samples. In theillustration shown, 384 samples equate to 1.5 seconds, meaning a 4 mssampling period. Ninety samples would correspond an RR EstimatedInterval of 360 ms, equating to 167 bpm. As noted above, other settingsfor the tachy zone may be used.

Returning now to FIG. 6, the method proceeds by determining whether thepicket test passed, as shown at 168. In an example, the picket testpasses if there are at least two pickets identified relative to thecandidate peak. In another example, multiple picket thresholds may applydepending on the lag depth of the peak under analysis. For example, inanalysis with maximum lag depth N, a rule set may call for least twopickets for a candidate peak having a lag depth of less than N/3, and atleast one picket for a candidate peak having a lag depth greater thanN/3 and less than N/2. This relative approach accommodates the factthat, for a candidate peak having a lag depth between N/3 and N/2, onlyone picket is possible, as the second picket would be at a lag depthgreater than “N” itself. Such relativity is optional, and may bemanaged, at least in part, using the dominant peak test discussed below.

If the picket test is passed, the method does a final check for anylarge peak in the tachy zone, as shown at 170. In some, limitedinstances, a large number of peaks may be reported during a chaotictachy event. In such a case, the decision to select only “N” largestcandidate peaks at block 154 could fail to choose as a candidate a peakin the tachy zone. Therefore the test at 170 looks for any peak in thetachy zone which is within 30% of the size of the largest peak, butwhich did not get identified as a candidate. If a large tachy zone peakis identified at 170, this peak is subjected to a picket test as well.If the peak chosen at 170 has pickets such that it passes the pickettest, then the large tachy zone peak from block 170 is reported as theRR estimate at 174. Otherwise, as noted at 156, the tachy zone flag isset and the candidate peak that did pass the picket test at 168 will bereported as the RR estimate at 174.

In some examples, all candidates may be checked until one is found whichpasses the picket test and, if no picket test passes can be found forany of the candidate peaks, the method proceeds to block 172.Alternatively, only the first selected candidate peaks is subject to thepicket test at 168, and, upon failing the picket test once, the methodgoes to block 172.

Upon reaching block 172, a dominant peak test is applied. The dominantpeak test determines whether there is a peak that is 30% larger than allother peaks in R[n] (excluding the peak at n=0). If so, then thatdominant peak is identified as the RR estimate.

The dominant peak test 172 may also be limited to passing when theidentified dominant peak is at a lag depth corresponding to a rate belowa preset threshold, such as 60, 75 or 90 bpm. The rate limit may beincluded in block 172 as an acknowledgement that there may be no picketsin the analyzed data for a low rate peak. This is so because the timespan of the R[n] calculation may not be sufficient to produce a picketpattern for all heart rates, particularly lower heart rates with longerbeat intervals.

For example, using a buffer of 3 seconds and comparator of 1.5 secondslength, the first picket for a peak at a lag depth of 800 milliseconds(75 bpm) would be at 1.6 seconds. Such a picket could not be identifiedgiven the buffer/comparator sizes, as the greatest lag depth is only 1.5seconds given the 3 second/1.5 seconds buffer/comparator sizes. On theother hand, a dominant peak at a smaller lag depth, such as 500milliseconds (120 bpm) would be expected to have two pickets in thisscenario, and, absent any pickets, would not be treated as a highlylikely RR estimate as there would appear to be less periodicity thanwould ordinarily be associated with a confident RR estimate.

If an RR estimate is calculated via one of the three possibleavenues—candidate peak passing the picket test (158-164-168), a largetachy peak (170) or the dominant peak test (172), the RR estimate can bereported out. A confidence grade can also be applied. In an example,three grades are available:

-   -   HIGH confidence if either        -   Rate>TachyThreshold with 3 pickets and R>HCThreshold, or        -   Rate<TachyThreshold with 2 pickets and R>HCThreshold;    -   MID confidence by default if no High or Low Confidence condition        is met; and    -   LOW confidence if        -   R<LCThreshold or        -   1 or fewer pickets and Dominant Peak Test 172 not passed            In this example, TachyThreshold can be set in a range            calling for high rates, for example, over 150, 180 or 200            bpm. In some examples, TachyThreshold may be selected in            light of the buffer and comparator size, in order to link to            the quantity of pickets that could appear. The HCThreshold            definition will be reliant on just how R is computed. In an            example, given computation of R using the formula at 124 in            FIG. 5, HCThreshold is set at 0.65. Likewise, LCThreshold            will be defined in a manner closely tied to the computation            of R. In an example also using formula 124 from FIG. 5,            LCThrehsold is set to 0.35.

The confidence information may also be incorporated into the trackingsteps shown in FIGS. 8A-8B. For example, switching from one track toanother, or declaring a new track, may be accelerated in response to ahigh confidence rate, while such steps may be delayed for a lowconfidence rate.

In a Bigemini pattern, there are two alternating morphologies forventricular depolarization or “R” waves. When a Bigemini pattern isanalyzed using self correlation, it can be difficult to determinewhether the output reflects R-wave and T-wave peaks, which alternate andhave different morphologies, or two R-waves having a Bigemini pattern.Particular approaches to identifying Bigemini and/or jitter are shown inFIG. 16 (Bigemini) and FIG. 17 (jitter), below.

FIGS. 8A-8B illustrate one method of tracking cardiac rate. Starting atblock 200 in FIG. 8A, any suitable manner of finding R[n], selecting aset of peaks and generating an RR Estimate are performed. The methodsillustrated in FIGS. 4-7 provide various options for block 200. Thetracking method begins by determining whether there is an existing or“active” track, as 202. If so, the method proceeds to B in FIG. 8B.

If there is no existing track, the method determines whether a valid RREstimate has been generated, as shown at 204. If no valid RR Estimatecan be had from the prior analysis, no new track will be declared, andthe method terminates with no track at 212 and awaits a next iteration.If a valid RR Estimate was found, the method next determines whether Xout of the last Y RR Estimates (or attempts) are similar, as shown at206. For example, if 3 of the last 4 RR estimates are similar, the testat 206 would be met for an X/Y of 3/4. In one example, a 3 of 6 rule isapplied at 206. If the test at block 206 is met, then a new track isestablished at 208.

If the test at 206 is not met, a new track may still be established onthe basis of a single very high confidence rate calculation. Thedefinition of very high confidence may vary. In one example, theHIGH/MID/LOW confidence rules applied above may be used, and any RRestimate that is calculated with HIGH confidence would be sufficient tomeet the rule at 210. In another example, a separate threshold for thevery high confidence rule at 210 may be set. In one embodiment, block210 is met when R>0.85 in a system calculating R using the formula shownat 124 in FIG. 5. If the rule at 210 is met, a new track is establishedas shown at 208. Otherwise, no new track is set, as noted at 212.

Turning to FIG. 8B, a valid track exists, and it is determined whetherthe latest RR Estimate is within the Gate, as shown at 220. The Gate hasa width, which can be defined in various ways. For example, the gate maybe 40 milliseconds wide, or it may be 20 bpm wide. The Gate may becentered on a prior RR Estimate or average of 2-4 previous RR Estimates.In one illustration, the Gate is calculated by converting the mostrecent RR Estimate to bpm, and setting the upper and lower bound 10 bpmaway. Thus, for example, if the most recent RR estimate is 400 ms, thatconverts to 150 bpm, and the Gate would be from 140 bpm to 160 bpm andan RR estimate between 429 ms and 375 milliseconds would be considered“in” the gate.

Gate width may also factor in rate variability. For example, thevariability of a set of recent RR Estimates can be calculated by simplytracking how much change there is one from one estimate to the next. TheGate width may be increased if the rate appears to be highly variable inthis example.

If the RR Estimate is within the Gate, the method declares the trackcontinued at 222. The RR Estimate is also reported out.

If the RR Estimate is not within the Gate, then the Coasting rules areapplied. Coasting takes place when a valid track has beenidentified/defined, but an iteration of the RR Estimate calculationfails to yield a result that meets the track definition. The use ofCoasting allows the track to continue and passes over temporarydisturbances such as noise or PVC, for example. Coasting avoids gaps inthe output RR Estimate by holding the last known RR Estimate. Coastingcan be particularly useful when a peak exists in R[n] but fails, forwhatever reason, to otherwise pass the rigorous tests in the peakselector for identifying the a candidate peak as an RR estimate.Coasting is available to salvage the RR Estimate for such peaks, butonly for a limited time.

In the illustrative example, Coasting is not allowed to continueindefinitely and a limit is applied, as shown at 224. If coasting iswithin its limits, the method continues via block 232 and continues onthe track at 222. To limit coasting, various rules can be applied andeach may have a different limit.

For example, as shown at 226, if no RR estimate or peaks are reported upfrom the calculation of R, there may be a first, “No Data” limit to theduration of coasting. In an example, the system will only allow a singleiteration of “No Data” before declaring the track lost at 236. Such a“No Data” condition can occur, for example, if noise has interruptedsensing and none of the peaks in R[n] exceed a base threshold. A “NoData” condition can also take place if a very polymorphic arrhythmiaonsets, such that R[n] simply fails to have any significant peaks.

Next, there is a coasting state in which no RR Estimate is produced, asshown at 228, with this state also requiring that there not be any ofthe reported peaks in the gate, as shown at 230. Thus, block 228 coversone set of circumstances in which rate estimate is lacking and the trackis not being confirmed, while block 230 covers a state in which there isa lower confidence confirmation of the track, whether or not anout-of-track RR estimate has been identified.

A fourth form of coasting can take place as part of a transition or“jump” to an alternate track, as noted at 232. In this instance theexisting track continues until either an alternate track condition ismet by having a “new” track declared using a similar determination as in206 or 210 of FIG. 8A.

As can be seen from blocks 226, 228, 230, 232, there are differentinputs to the coasting state, each of which comes with somewhat varyingconfidence levels. For example, confidence in the underlying track orsensing reliability is low when no data is received 226, and not muchbetter when there is no RR Estimate reported and none of the reportedpeaks fall within the gate 228. These two blocks 226, 228 may becombined for a single limit in the range of 1-3 iterations before thecoasting limit is exceeded. Alternatively, block 226 may have a lowercosting limit (1-2 iterations) while block 228 has an equal or higherlimit (1-4 iterations), with a combined limit matching the higher limit(1-4).

The alternate peak in gate condition, at 230, is a much higherconfidence condition, by suggesting that the track may still be valid,even if sensing a anomaly, such as noise, is present. This condition 230may have a still higher coasting limit, in the range of 2-10 iterationsor may be subject simply to an overall limit (in the range of 2-10iterations) which would combine any coasting within any of 226, 228, 230or 232.

Block 232, the Jump limit, is present to enable quick transition to anew track, without having to first wait for a declaration that the trackis lost at 236 before assessing whether a new track exists. The Jumplimit also prevents a shift to a new rate based on peaks that appearwithin an old, but no longer valid, track. When a coasting limit is metat 224 via the jump limit, the outcome follows a different path to 238.As a result, if the Jump limit is met, the method simply continues witha new track definition. To meet the Jump limit 232, in an illustrativeexample, the same rule as was applied at 206 may be applied to the newtrack. As noted at 232, the Jump limit may be applied just for high rateconditions, which are of greater concern generally than low rateconditions, using, for example, a limit in the range of 100-180 bpm,with 150 bpm being one example rate in particular.

The use of the Jump allows a quick transition to a higher rate RREstimate, with a less stringent rule set when there is an existing trackand a jump takes place. In the example, to declare a new track when notrack has been identified would require a higher confidence in the newdata than is required for the jump.

If the coasting limit is exceeded at 224, the track will be declaredlost, as noted at 236. If the coasting limit is not exceeded, thecoasting “state” can be recorded 234, with different coast statesidentified for each of the different coasting conditions 226, 228, 230,232. While coasting, the track continues as shown at 222 until the nextiteration is called.

FIG. 9 illustrates tracking of cardiac rate over time. There may bevarious triggers for performing self-correlation, as noted at 240. Forexample, self-correlation may be a default, continuing analysis calledby an implantable system throughout the life of the system.Alternatively, self-correlation may be called in response to anidentified potential condition necessitating treatment, such as anelevated rate condition. In one example, the cardiac rate may becalculated using conventional R-wave detection schemes (often bycomparing the detected cardiac signal to a time varying threshold). Ifthe identified rate crosses a threshold, the self-correlation methodsmay be initiated to confirm elevated rate. Thresholds may be set, forexample, in the range of 100-180 bpm, or higher or lower, as desired.

In one example, a cardiac therapy system may use a number of intervalsto detect (NID) approach or an X/Y filter to transition from unconcernedstate into a therapy preparation and delivery state. For example, an X/Yfilter may call for 18 out of 24 prior detected heart beats to beanalyzed and considered treatable before therapy is delivered. For sucha system, if X reaches a lower threshold, for example, 8/24, theself-correlation may be called to begin analyzing and confirming (orrejecting) calculated rates before the 18/24 boundary is reached.Similarly, if an NID approach is used, an NID threshold that is below atherapy boundary may be used to trigger the self-correlation analysis.

In another example, self-correlation may be called to periodicallyconfirm sensing integrity by calculating a cardiac rate for comparisonto other rate calculation methods/circuits. In some examples, theself-correlation shown in the present application may serve as the soleestimator of cardiac rate in an implantable device.

Once the analysis is triggered at 240, the self-correlation is performedat intervals, such that R[n,t] is calculated for each of t={0, 1, . . .i}, as shown at 242, 244, 246. From this series of calculations, a ratetrack is sought and, if possible, established as shown at 248. Theanalysis may confirm or reject a calculated rate, as shown at 250.

In addition, the analysis may be used to confirm, accelerate or delaytherapy delivery, as noted at 252. Returning to an above example, if theself-correlation is called once the cardiac rate identified byconventional R-wave detection crosses a threshold, if self-correlationconfirms an elevated heart rate requiring therapy, a therapy thresholdmay be lowered. For example, if a system uses an X/Y counter set to18/24, the counter may be reduced to 12/16 if self-correlation confirmsa very high rate prior to the X/Y counter condition being met. Inanother implementation, the self-correlation RR estimate can replace aconventionally calculated heart rate for a specified period of time,quantity of detected events, or until a next calculation of R[n] andanalysis thereof is performed.

FIGS. 10-13 demonstrate several cardiac rate tracking steps usinghypothetical examples. FIG. 10 illustrates the initiation of a ratetracking activity. The self-correlation function is calculated at eachof times t1, t2 and t3, as shown at 260, 262 and 264. For purposes ofunderstanding operation of this embodiment, a graph at 266 illustrateshow the peaks of each R[n] calculation align with one another. Lookingat R[n,t1], the graph at 260 illustrates that three peaks above theR=0.3 threshold were found, at lag depths of approximately 95, 190, and285 samples. Using the method of FIG. 6, these three peaks 268, 270, 272would be reported out of the peak analysis.

Next, again using the rules shown in FIG. 6, the first peak 268 fromR[n,t1] is chosen as a candidate peak. Pickets would then be sought. Asillustrated, there are two pickets identified for candidate peak 268, tothe additional peaks at 270 and 272. Thus the method of FIG. 6 wouldconfirm that peak 268 provides the RR estimate, while each of peaks 268,270 and 272 would be reported to the tracking engine.

The RR Estimate from R[n,t1] is shown in graph 266 at 274; the otherpeaks from R[n,t1] are also shown as alternate peaks. Likewise, RREstimates result from the analysis of the other two calculations atR[n,t2] and R[n,t3], as shown at 276 and 278. Here, no track has yetbeen declared. As a result, each of the RR Estimates may be deemed toyield a medium-confidence rate estimate, until a track can be declared.

Turning to FIG. 11, the matching of the results for each of R[n,t1],R[n,t2] and R[n,t3] is sufficient to meet the track definition in FIG.8B using a 3/6 rule. Therefore a track gate is shown at 280 for use inassessing the next iteration of the self-correlation, at R[n,t4]. Thenewly calculated R[n,t4] is shown graphically at 282. In R[n,t4], thepeak associated with a T-wave comparison appears at 284 in addition tothe much higher peak for the R-wave at 286. Again applying the rule setin FIG. 6, the first peak is at 284, and could be chosen if the rule at162 in FIG. 6 controlled. However, the second peak at 286 issignificantly larger than the first peak and appears at a lag depth thatsupports a rate greater than 75 bpm, meeting the rule at 160 in FIG. 6.Therefore peak 286 is selected for analysis, and is found as before tohave two pickets (not shown) and is used to report out an RR Estimate.As shown at 288, the RR Estimate for R[n,t4] is within the gate.

It should also be noted that the peak 286 that is used for the RREstimate exceeds an HC Threshold for high confidence. Therefore, the RREstimate at 288 would then be used for rate reporting by the tracker,with high confidence.

FIG. 12 presents a different scenario for the calculation of R[n,t4]after the track is established and gate is set at 290. Here, the outputhas changed dramatically from R[n,t3] to R[n,t4], as shown at 292. Usingthe rules of FIG. 6, the first peak 294 is chosen as a candidate peak,however, no pickets are found because the next significant peak, at 296,is too far away. There is also no dominant peak. As a result, no RREstimate is calculated.

Looking at the updated overall graph, it can be seen that gate 298 isempty, without an RR Estimate or an alternate peak therein. As a result,for R[n,t4], the analysis is in a coasting state in FIG. 12. Because noRR Estimate could be calculated based on R[n,t4], a rate would not bereported to the Peak tracker. Because the track continues in a coastingstate, an output rate estimate would be provided and, in an example,would be a value within the gate or could be the same as a previousoutput. Based on the empty gate at 298, the output rate estimate wouldbe given a low confidence level.

FIG. 13 presents another different scenario for the calculation ofR[n,t4] after a track has been established. Gate 300 is set for theanalysis, however, R[n,t4], as shown at 302, does not identify a peakthat sits within the gate, as shown at 304, as the RR Estimate. Instead,a peak 306 at a lesser lag depth is identified as the RR Estimate. Thusthe RR Estimate 308 sits away from the gate 304, though one of thealternate peaks in R[n,t4] is within the gate.

Referring back to FIG. 8B, the event shown in FIG. 13 would trigger acoasting analysis using the tachy jump limit 232. Specifically, RREstimate 308 is at a relatively short lag depth shown, in the example,as corresponding to a rate between 180 and 240 bpm. Given this is thefirst such RR Estimate, not enough information is available yet todeclare a new track. This could be a momentary jump, or it could be theonset of a new rhythm. Until more data is received, the illustrativemethod will wait and coast with the track continuing. The output rateestimate would continue to be within the existing track. However,because the RR Estimate is outside of the gate, any rate estimate wouldbe reported with low confidence. A Tachy flag would be set based on thelarge peak in the tachy zone.

FIG. 14 illustrates a dominant peak test for peak selection in FIG. 6.In the illustrative example, a result for an R[n,t] calculation is shownwith a large peak at 320 with a lag depth of about 200 samples. Here thesignal is giving off difficulties. In the first instance, the peak at320 lacks any pickets as indicated at 322, largely because any peakwould appear beyond the end of the R[n,t] calculation due to the largelag depth of peak 320. In an illustrative analysis, the picket testwould therefore fail.

Using the analysis of FIG. 6, a next candidate peak could be reviewed,here, candidate peak 324 could be checked. However, as indicated at 326,again no picket would be identified. There is no picket peak within theset of identified peaks above threshold 328 at the location where apicket would have to appear for peak 324 to pass the picket test. In analternative approach, a single pass system would only look at a singlecandidate to identify pickets; once peak 320 fails in this analysis, noother peak would be analyzed.

As shown in the lower portion of FIG. 14, a method for identifying adominant peak can begin by determining that no peak passes the pickettest, as shown at 340. Next, it is determined whether there is a peakthat is larger than all other peaks (except the null peak at zero lagdepth) by some margin, as shown at 342. In the illustrative example, themargin is a percentage, X, which may be in the range of 30%, withillustrative ranges from 15% to 50%, or larger or smaller. Those skilledin the art will recognize that other “margins” can be defined depending,for example, on the manner in which R[n,t] is normalized, withoutmodifying the principle of the dominant peak test shown in FIG. 14.

Here, peak 320 passes block 342 because the next largest peak in theR[n,t] graph, at 324, is lower than peak 320 by margin 330. The dominantpeak test then looks at whether the lag depth of the large peak isbeyond a dominant peak lag threshold, as shown at 344. The threshold isshown at 332. In an example, the threshold 332 may be selected pass anypeak that necessarily fails the picket test due to its lag depth beingsuch that no pickets can appear in R[n,t]. Thus, in the example, thethreshold 332 is set at a lag depth of 200, within a window of totaldepth 400. Any peak, such as peak 320, having a greater lag depth thanthe threshold 332 would have no pickets within the analysis window.

Since peak 320 passes both tests 342 and 344, peak 320 is identified asthe dominant peak, and the method will report a rate corresponding tothe lag depth of peak 320. Had either of tests 342 or 344 failed, themethod would have ended at 350 without identification of a dominantpeak. Given that no picket test was passed, as indicated at 340, endingat block 350 may, in some examples, lead to a result of no rate beingestimated based on the particular R[n,t] calculation. In other examples,a low confidence rate estimate may still be made, using, for example,the largest peak (here 320). In another example, two possible rates maybe reported if neither a dominant peak nor a picket-test-passing peak isfound: a rate corresponding to the largest peak 320, and a ratecorresponding to the next largest peak 324, each with low confidence.

FIG. 15 illustrates a high rate peak test for the peak selection in FIG.6. Here, numerous peaks appear in the R[t,n], and the largest five peaksare labeled A, B, C, D, E. Using the picket test rules peak A, at 360,has pickets 362 (corresponding to peak C) and 364 (corresponding to peakE), and passes the picket test. However, there is another peak, 366,which was not selected as one of the candidate peaks, due to its beingsomewhat smaller.

The high rate peak test begins, as shown at 370, by determining whetherthe picket test was passed. Here, the picket test is passed as shown bypickets 362 and 364 for peak 360.

Next, the high-rate peak test checks whether there is a tachy peakwithin some percentage of the maximum, as shown at 372. By “tachy peak”,the method is indicating a peak not among the candidate peaks A, B, C,D, and E, which falls within a tachy zone. In the illustrative example,using a sampling rate of 256 Hz, a tachy zone may be defined as any peakat a lag depth of less than 100, which would correlate to a period of396 milliseconds or less and a rate above 150 bpm. In an alternativeexample, block 372 may identify any peak that is within the tachy zone,without having reference to the height of the maximum peak.

In this example, such a peak does appear at 366. Next, the picket testis re-performed, using the peak identified in block 372. The retest isshown illustratively at 380. Peak 366 has pickets 382 and 384, as shown.

If the picket test is passed at 374, then the originally selected peakis replaced by the tachy peak identified at 372 and which passed thepicket test at 374. In the illustrative example, rather than selectingpeak A, at 360, the method instead selects peak 366. In thisillustration, the lag depth calculated goes from 120 to 60, causing anincrease in the identified heart rate from 130 bpm to 260 bpm. In someexamples, because the peak that yields the heart rate estimate is alower peak and was not identified in a first pass, the outcome may betreated as having a lower confidence or an ambiguity flag may be set toindicate there is some ambiguity present.

As noted above, in a Bigemini pattern, there are two alternatingmorphologies for ventricular depolarization or “R” waves. A Bigeminipattern of ABAB will yield alternating peaks within the self-correlationresult R[n]. High peaks will appear when “AB” is compared to “AB”, witheach of the A peaks aligned and each of the B peaks aligned, andrelatively lower peaks when “AB” is compared to “BA”, that is, A iscompared to B and B to A. Within Bigemini patterns, however, the AB andBA intervals will often be consistent.

A cardiac signal with relatively large T-waves, when compared toR-waves, may appear somewhat similar to some Bigemini signals. Thisrequires two elements: first, the R and T waves must be generally fairlysimilar, and second, the R-T and T-R intervals must also be fairlysimilar. The R-wave would usually be narrower than the T-wave, but ifboth are monophasic the two can be fairly similar. The R-T and T-Rintervals are generally similar in only a narrow range of rates for anygiven patient. Moreover, as noted, for example, in U.S. Pat. Nos.7,623,909 and 8,200,341, a sensing vector in which the R and T waveamplitudes are similar would often be disfavored from the outset, andvector selection can be used to choose a vector with a larger R:Tamplitude ratio.

When a Bigemini pattern is analyzed using self-correlation, it can bedifficult to determine whether the output reflects R-wave and T-wavepeaks, which alternate and have different morphologies, or two R-waveshaving a Bigemini pattern. Vector selection can be used to avoidconfusion, along with a set of rules shown and demonstrated in FIG. 16.

As shown at 400, a Bigemini rhythm, when subjected to theself-correlation analysis of FIGS. 4-5, above, yields a pattern of highand low peaks. Using the methods of FIGS. 6-7, above, would ordinarilyselect peak 402 as the RR Estimate peak. However, because the actualrhythm is a Bigemini signal, the true RR is at half the lag depth of theoriginally chosen RR Estimate, that is, at peak 404.

To address this potential issue, an optional Bigemini test is shownbelow at 408. The optional Bigemini test can be turned “on” by aphysician, as not all patients are prone to this rhythm pattern.

The test begins after an RR Estimate has been calculated at 410. Next,the test looks for peaks spaced by one half of the lag depth of the RREstimate, as shown at 412. As shown in the graphic at 400, peaks 404 and406 meet the check at 412.

After passing the check at 412, the method determines whether the valuesof the R[n] peaks identified in block 412 are within a predeterminedratio of the value of the R[n] peak original selected as the RRestimate. “RVal” is used as the shorthand for the value of R[n] of eachpeak in the drawing. Here, a threshold is shown in the graphic 400, andpeak 404 exceed the threshold, passing step 414. The illustrativethreshold is 55% of the RVal peak for the original RR Estimate; otherthresholds may be used in the range of, for example, 40-80%.

With both 412 and 414 passed, the Bigemini test will restate the RREstimate, using the peak at RR Est/2 as shown at 416—here, peak 404becomes RR Estimate. However, in light of the identification of a likelyBigemini pattern, for purposes of determining confidence in the outcome,the RVal for the original RR Estimate is retained, as indicated at 416.Thus, although peak 404 has an R[n] of about 0.5, the reported RValfigure would be about 0.75, R[n] value for peak 402.

If either of 412 or 414 fails, the Bigemini test fails as well, and themethod ends at 418. Likewise, after any correction is made at block 416,the Bigemini test ends.

FIG. 17 addresses a test to check for jitter. Jitter may occur where theR-R interval is occasionally inconsistent, leading to a split peak inthe output such as shown in the graphic at 430. Using the methods ofFIGS. 6-7, an RR estimate is identified at 432. However, a split peakappears at 434, with the split peaks occurring at about RRest/2, with anR[n] value for each of the split peaks exceeding a relative threshold,suggesting that there may be jitter (or alternans, as the varying R-Rintervals can be called) occurring.

To text for such jitter, a method is shown at 436. First, an RR Estimateis calculated, as shown at 438. Next the method checks for split peaksat RRest/2, as shown at 440. If such split peaks are found at 440, themethod determines whether each of the split peaks meet an Rvalthreshold, as shown at 442. In the illustrative method, the Rvalthreshold is 50%; other thresholds may be used in the range of, forexample, 40% to 80%.

If each of checks 440 and 442 are passed, then the method will restatethe RR Estimate as RRest/2, as shown at 444. As with the bigemini test,the Rval from the original RRest can be retained in this example. Ifeither of checks 440 and 442 fail, then the jitter test ends as shown at446.

For each of the Bigemini test (FIG. 16) and Jitter test (FIG. 17), whenthe tests cause a modification of the RR Estimate, a flag may be set, acounter may be incremented, or the event may otherwise becounted/identified. In some examples, passing either of these tests cancause the system to store data in memory for later physician retrievalto review any such events.

FIGS. 18A-18B show several ways in which the R[n] Calculator, a PeakSelector, an RR Estimate Tracker, and a Therapy Decision can be linkedtogether. In the example of FIG. 18A, the R[n] Calculator 460 reportsthe output of an R[n] calculation to a Peak Selector 462. The PeakSelector 462 provides an RR Estimate(a) and a set of Peaks to the PeakTracker 464. The Peak Selector 462 also provides, in this example, theRR Estimate(a) to a Therapy Decision Block 466, along with any Flagsarising out of the Peak Selector 462 analysis as well as a Confidence(a)indicator. The Therapy Decision Block 466 can use the RR Estimate(a)from the Peak Selector 462 as well as any Flags and the ReportedConfidence(a) to determine whether a conventional rate estimate islikely correct or incorrect. The RR Estimate Tracker 464 reports an RREstimate(b) and Confidence to the Therapy Decision 466.

For example, the Peak Selector 462 may identify an RR Estimate(a), butwith low Confidence(a), while the RR Estimate Tracker 464 identifies adifferent RR Estimate(b) with higher Confidence(b), based on a secondarypeak that meets an existing Track and which either has one or morepickets or is in a tachy zone, even if the reported RR Estimate(a) isnot in the track. In that case, the Therapy Decision block 466 mayignore the RR Estimate(a) and instead adopt RR Estimate(b).

In another example, if the RR Estimate(a) is reported with HighConfidence(a), but the RR Estimate Tracker does not find a peak in anexisting track and reports it is coasting, using a preserved, prior RREstimate and reporting a low Confidence(b), the Therapy Decision block406 may adopt RR Estimate(a) over RR Estimate (b).

Thus, in the example of FIG. 18A, Therapy Decision block 466 is allowedto select from between RR Estimate(a) and RR Estimate(b), using thereported Confidences from each of the Peak Selector 462 and RR EstimateTracker 464.

In the example of FIG. 18B, the R[n] Calculator 480 again provides itsresults to the Peak Selector 482. The Peak Selector 482 performs itsfunction and provides Peaks, an RR Estimate(a), any set Flags, and aConfidence(a) to the RR Estimate Tracker 484. The RR Estimate Tracker484 performs its function and provides an RR Estimate(b), Confidence(b)and any set Flags to the Therapy Decision block 486. Thus, in FIG. 18B,the RR Estimate Tracker determines a single output RR Estimate(a) withassociated Confidence(b) to the Therapy Decision block 486.

One or more of the individual blocks in FIGS. 18A-18B may be separatepieces of hardware in a single system, though two or more blocks may beintegrated in a single dedicated circuit. Alternatively, the separateblocks in FIG. 18A-18B, may be separate functional blocks in a largersoftware structure. For example, given a stream (or stored stack) ofdata, a function call to Calculate R[n] 460/480 could be performed,followed by a function call to perform Peak Selection 462/482 given theoutput R[n], followed by a function call to Track RR Estimate 464/484using the RR Estimate(a) and Peaks from Peak Selection, which may all beused as inputs (along with other data) for calling the Therapy Decision466/486. In one example, blocks 480, 482 and 484 are provided on adedicated circuit and the outputs of these blocks are provided to aprocessor or controller where the Therapy Decision process is performed.

In the embodiments shown in FIGS. 18A-18B (and other examples shownabove and below), an RR Estimate can be considered an estimate ofcardiac rate. Where a confidence measure is provided in association withan RR estimate and one or more peaks, such can be treated as one or morepossible estimates of cardiac rate.

FIG. 19 illustrates an integration of two methods for identifying rate.A conventional rate method is illustrated using block 500, where R-wavesare detected individually by comparing a detected signal to a threshold.Conventional R-wave detection may be used in block 500. Someillustrative examples appear in U.S. Pat. Nos. 8,565,878 and 5,709,215.

Detected R-waves are reported to a noise/overdetection removal block 502which confirms the R-waves are likely cardiac events. Once theindividually detected R-waves have been confirmed at 502, rate and shape(morphology) information are obtained 504 and provided to a therapydecision and/or delivery block 506. This conventional method thenreturns to a wait state 508 until the next R-wave detection.

The method also integrates a rate calculation using self-correlation,which can be called asynchronously (at fixed intervals, for example), orsynchronously to the new detection 500, as desired. This wait state isdepicted at 510. Upon activation, the self-correlation rate estimate ismade using the combination one or more of calculating R[n], SelectingPeaks, and Tracking an RR Estimate 512. A resulting RR Estimate is thenreported at 514 to the Therapy Decision block 506, and the wait state510 is again entered. The RR Estimate from block 512 may be generatedusing the tracking tools described above or, in some examples a cardiacrate estimate may be generated directly from a peak selector thatassesses a self-correlation function. Thus, tracking is expresslyoptional in the above examples.

The therapy decision 506 may use each of these different calculations invarious approaches to identifying whether therapy is needed. Forexample, one of the rates may be used to double check the other, or therates may be compared to identify a match. If the rates do not match,additional analysis may be performed using, for example, additionalsensing inputs, such as a motion sensor or blood pressure or oxygenationsensor. If the rates both suggest therapy is needed (whether matching ornot), therapy functions may then be called. Other approaches are notedabove.

In one example, if the dominant peak test is applied and met by adominant peak, then therapy decision 506 may be configured to treat theestimated cardiac rate associated with the dominant peak as morereliable than a rate generated using an R-wave detection from block 500.In another example, a peak which passes the picket test may be treatedin the therapy decision 506 as more reliable than a rate generated usingan R-wave detection from block 500. In yet another example, the outputsof the peak selection may be treated as less reliable than the R-wavedetection outputs until a track is declared via the methods of FIG.8A-8B, and then only if the peak selection output falls within a definedtrack.

Still other examples may have multiple analytical courses depending onthe status of the R-wave detection rate, tracking and peak selectionoutputs. For example, the following rules may apply in various examples:

-   -   If both R-wave detection rate and Self-Correlation Rate match        and are high rates, the high rate is confirmed, suggesting        tachyarrhythmia    -   If R-wave detection suggests high rate but Self-Correlation Rate        is lower, additional analysis is required (waiting time,        detected event width or morphology analysis) before the high        rate is treated as valid if either:        -   the Self-Correlation Rate is based on a rate estimate            falling within a valid track (the rate estimate being either            a candidate or selected peak from peak analysis); or        -   the Self-Correlation Rate is based on a selected peak that            passes one of the picket test or the dominant peak test    -   If R-wave detection rate is low, but Self-Correlation Rate is        high, additional analysis (waiting time, detected event width or        morphology analysis) is required before the high rate is treated        as valid unless the Self-Correlation Rate is within a declared        track and is based on a peak that passes the picket test        (whether directly or via the large tachy peak test)        In another example, tracking is omitted and the following rules        may apply:    -   The rate calculated using R-wave detection is treated as valid        if it is high and the Self-Correlation rate exceeds a tachy        threshold (whether the rates match or not);    -   The rate calculated using R-wave detection is treated as valid        if it is high and the Self-Correlation test fails to meet either        the picket test or dominant peak test;    -   The rate calculated using the Self-Correlation test is treated        as valid if it is lower than the R-wave detection rate and below        the tachy threshold and either passes the picket test or passes        the dominant peak test        Other combinations are also possible within the scope of the        present invention.

In one example, if the Self-Correlation analysis is called periodically,and if the Self-Correlation rate is calculated with high confidence,then the Self-Correlation rate takes the place of the rate calculatedusing R-wave detection until the next iteration of the Self-Correlationanalysis. In a system using an NID or X-out-of-Y filter, then theSelf-Correlation analysis rate can be treated as occurring repeatedlyduring the time period where the R-wave detection is replaced. Forexample, if Self-Correlation determines a rate of 180 beats-per-minute,and the Self-Correlation function is called at one second intervals, theNID or X-out-of-Y filter analysis would add three events at 180beats-per-minute during the one second interval between iterations ofthe Self-Correlation analysis.

The therapy decision 506 may determine whether the cardiac rate asestimated by one or both of blocks 502/512 exceeds a therapy thresholdusing, for example, a direct calculation of one rate, or a calculationacross several iterations using one or more of an NID or X-out-of-Yfilter as discussed above. The therapy decision may combine rate withmorphology (shape) information gathered from the cardiac signal. In someexamples, the therapy decision 506 can set two or more rate boundaries,including one or more of a shock-only boundary, in which rates above athreshold are deemed necessitating high energy cardioversion ordefibrillation shock, a VT zone in which a lower energy therapy such asanti-tachycardia pacing is applied, and a conditional zone in whichadditional analysis of a combination of shape elements (templatematching, width, interval stability, amplitude, etc.) as well as rate isperformed. The therapy decision 506 may integrate additional sensorinputs or inputs from separate devices, such as blood oxygenation,pressure, color, etc. measurements, measurements from a separate devicesuch as a pressure monitor, leadless pacer, etc., or measurements from aposition or movement sensor which can be separately provided in thepatient's or integrated in a single device with the rest of the systemthat performs the self-correlation and other functions described above.

VARIOUS NOTES & EXAMPLES

A first non-limiting example takes the form of an implantable medicaldevice system configured for iterative analysis of cardiac signalscomprising a plurality of electrodes (16, 18, 20, 36, 38, 40, 42) forsensing cardiac signals; self-correlation means for generating aself-correlation function from the sensed cardiac signals, theself-correlation function having amplitudes as a function of lag depth;and peak selector means for identifying amplitude peaks in theself-correlation function and finding a first estimate of cardiac rateand first affiliated confidence having ratings of at least low or highconfidence. Further in the first non-limiting example, the peak selectormeans comprises picket test means for determining whether, for aselected peak having a first lag depth in the self-correlation functionof a given iteration, at least one additional peak appears at a secondlag depth that is a multiple of the first lag depth; and the peakselector means further comprises candidate selection means for selectingcandidate peaks to determine suitability of the candidate peaks forcalculating an estimated cardiac rate operable to: identify a quantityof candidate peaks using peaks of the self-correlation function; selectas a first candidate peak one of the following: a candidate peak havingthe least lag depth of the identified candidate peaks, or a candidatepeak having an amplitude that is larger than that of the candidate peakwith the least lag depth by at least a first margin and whichcorresponds to a cardiac rate exceeding a rate threshold; wherein thepeak selector means is configured to use the candidate selection meansto identify one or more candidate peaks, and the picket test means todetermine whether any candidate peaks are suitable to estimate cardiacrate and, if so, to report an estimated cardiac rate. FIG. 3 andassociated text illustrate the first non-limiting example by including aself-correlation means to generate the self-correlation function, R[n],at 60, a peak selector means at 62, and tracking means with blocks 64,66 and 68 to generate an estimated rate and confidence at 70. Anotherexample is in FIG. 6, which illustrates the peak selector meansgenerally including identification or finding peaks, at 150 andassociated text, and performing analysis to lead to an estimate of ratein the form of an RR interval estimate at 174. The peak selector meansas shown in FIG. 6 includes a candidate selection at 154, 156, 158, 160,162 and associated text, as well as picket testing determination at 164,166, 168 and associated text.

A second non-limiting example takes the form of an implantable medicaldevice system as in the first non-limiting example, wherein the peakselector means further comprises dominant peak testing means fordetermining whether any of the candidate peaks exceeds all other peaksby at least a second margin, wherein the peak selector means is operableto use the dominant peak testing means to attempt to identify a peaksuitable to estimate cardiac rate if no candidate peak is found suitableby the picket test means. Dominant peak testing means is illustrated inFIG. 6 at 172 and associated text.

A third non-limiting example takes the form of an implantable medicaldevice system as in the second non-limiting example, wherein, if thedominant peak testing means identifies a dominant peak that exceeds allother peaks by at least the second margin and the dominant peakcorresponds to a cardiac rate that is below a dominant peak ratethreshold, the peak selector means reports the cardiac ratecorresponding to the dominant peak as an estimated cardiac rate.

A fourth non-limiting example takes the form of an implantable medicaldevice system as in the third non-limiting example, further comprising:R-wave detection means for detecting cardiac events by comparison of anelectrical signal from the electrodes to a threshold and thereby togenerate a plurality of R-wave detections and resultant rate estimate;and decision means for taking results from each of the R-wave detectionmeans and the tracking means and determining whether a therapy isneeded; wherein the decision means is configured to accept an estimatedcardiac rate reported by the peak selector means based on a dominantpeak as more reliable than a rate generated by the R-wave detectionmeans. The inclusion of R-wave detection means and decision means isillustrated in at least FIG. 19, including for example the R-wavedetection 500 and decision means at 506 and associated text.

A fifth non-limiting example takes the form of an implantable medicaldevice system as in either the first or second non-limiting examples,wherein the candidate selection means is configured to select apredetermined quantity of the largest peaks in the self-correlationfunction; and the peak selector means further comprises largetachycardia peak check means for determining whether a peak in theself-correlation function at a depth corresponding to a tachycardia rateis within a third margin of the largest peak in the self-correlationfunction and, if so, the peak selector means is configured to submit thepeak identified by the large tachycardia peak check means to the pickettest means to determine whether it is suitable to estimate cardiac rate.

A sixth non-limiting example takes the form of an implantable medicaldevice system as in any of the first to third non-limiting examples,further comprising tracking means for tracking outputs of the peakselector means to generate a cardiac rate estimate therefrom.

A seventh non-limiting example takes the form of an implantable medicaldevice system as in the sixth non-limiting example, further comprisingreporting means for identifying and reporting any peak in theself-correlation function that is greater than a reporting threshold tothe tracking means.

An eighth non-limiting example takes the form of an implantable medicaldevice system as in the sixth non-limiting example, further comprisingreporting means for identifying a maximum peak in the self-correlationfunction and reporting any peak in the self-correlation function that isgreater than a threshold percentage of the maximum peak to the trackingmeans.

A ninth non-limiting example takes the form of an implantable medicaldevice system as in any of the sixth to eighth non-limiting examples,further comprising: R-wave detection means for detecting cardiac eventsby comparison of an electrical signal from the electrodes to a thresholdand thereby to generate a plurality of R-wave detections and resultantrate estimate; and decision means for taking results from each of theR-wave detection means and the tracking means and determining whether atherapy is needed.

A tenth non-limiting example takes the form of an implantable medicaldevice system as in any of the first to third non-limiting examples,further comprising: R-wave detection means for detecting cardiac eventsby comparison of an electrical signal from the electrodes to a thresholdand thereby to generate a plurality of R-wave detections and resultantrate estimate; and decision means for taking results from each of theR-wave detection means and the peak selector means and determiningwhether a therapy is needed.

An eleventh non-limiting example takes the form of an implantablemedical device system as in the tenth non-limiting example, wherein thedecision means is configured to treat a result from the peak selectormeans as more reliable than a result from the R-wave detection means ifa rate estimate reported by the peak selector means is based on acandidate peak identified by the picket test means as suitable toestimate cardiac rate.

A twelfth non-limiting example takes the form of an implantable medicaldevice system as in any of the first to eleventh non-limiting example,wherein the rate threshold is set at 75 beats per minute.

A thirteenth non-limiting example takes the form of an implantablemedical device system as in any of the first to twelfth non-limitingexamples, wherein the self-correlation means generates theself-correlation function having a series of output samples {1 . . . N},wherein the picket test means is configured to identify whether thereare at least two pickets for a candidate peak having a lag depth of lessthan N/3, and at least one picket for a candidate peak having a lagdepth greater than N/3 and less than N/2.

A fourteenth non-limiting example takes the form of an implantablemedical device system as in any of the first to thirteenth non-limitingexamples wherein the peak selector means is configured to determinewhether there are any peaks in the self-correlation function greaterthan a tachy threshold located within a lag depth of less than a tachylag threshold and, if so, to set a flag for possible tachyarrhythmia.

A fifteenth non-limiting example takes the form of an implantablemedical device system as in any of the first to fourteenth non-limitingexamples, wherein the implantable medical device system comprises acanister housing operational circuitry including at least theself-correlation means and peak selector means, and a lead systemincluding at least some of the plurality of electrodes.

A sixteenth non-limiting example takes the form of a method of analyzingcardiac signals in an implantable medical device having a plurality ofelectrodes for sensing cardiac signals coupled to operational circuitryfor at least performing analysis of sensed cardiac signals, the methodcomprising: generating a self-correlation function from the sensedcardiac signals, the self-correlation function having amplitudes as afunction of lag depth; and identifying amplitude peaks in theself-correlation function and finding a first estimate of cardiac rate:identifying one or more candidate amplitude peaks each having lagdepths; selecting a first candidate peak having a first lag depth bychoosing either: a candidate peak having the least lag depth of theidentified candidate peaks, or a candidate peak having an amplitude thatis larger than that of the candidate peak with the least lag depth by atleast a first margin and which corresponds to a cardiac rate exceeding arate threshold; applying a picket test to the first candidate peak bydetermining whether at least one additional peak appears at a second lagdepth that is a multiple of the lag depth of the first candidate peakand, if so, finding that the picket test is passed for the firstcandidate peak.

A seventeenth non-limiting example takes the form of a method ofanalyzing cardiac signals as in the sixteenth non-limiting example,wherein the first estimate of cardiac rate is generated by convertingthe first lag depth to a time interval and converting the time intervalinto a rate in response to finding that the picket test was passed bythe first candidate peak.

An eighteenth non-limiting example takes the form of a method ofanalyzing cardiac signals as in the sixteenth non-limiting example,further comprising: finding that the picket test was not passed for thefirst candidate peak; selecting a second candidate peak; and applyingthe picket test to the second candidate peak.

A nineteenth non-limiting example takes the form of a method ofanalyzing cardiac signals as in the sixteenth non-limiting example,further comprising: finding that the picket test was not passed for atleast the first candidate peak; identifying a largest peak in theself-correlation function; assessing whether the largest peak is largerthan any other peak in the self-correlation function by at least athreshold amount; finding that the largest peak is larger than any otherpeak by at least the threshold amount; and using the lag depth of thelargest peak to calculate a the first estimate of cardiac rate.

A twentieth non-limiting example takes the form of a method of analyzingcardiac signals as in the sixteenth non-limiting example, furthercomprising: finding that the picket test was passed for the firstcandidate peak; checking whether the self-correlation function includesa non-candidate peak having a lag depth less than that of the firstcandidate peak and an amplitude within a threshold of the firstcandidate peak; and if so, determining whether the non-candidate peakpasses the picket test.

A twenty-first non-limiting example takes the form of a method ofanalyzing cardiac signals as in any of the sixteenth to twentiethnon-limiting examples, further comprising: performing R-wave detectionon the sensed cardiac signals to generate a plurality of R-wavedetections; calculating a second estimate of cardiac rate using theR-wave detections; and analyzing the first and second estimates ofcardiac rate to determine whether a therapy is needed.

A twenty-second non-limiting example takes the form of a method ofanalyzing cardiac signals as in any of the sixteenth to twenty-firstnon-limiting examples further comprising tracking the first estimate ofcardiac rate over time to establish confidence measures if the firstestimate of cardiac rate is consistent over either a period of time or aseries of calculations.

A twenty-third non-limiting example takes the form of a method ofanalyzing cardiac signals as in any of the sixteenth to twenty-secondnon-limiting examples, further comprising generating a confidence inaffiliation with the first estimate of cardiac rate as follows:analyzing a largest peak in the self-correlation function to determinewhether it is a dominant peak, if the picket test is not passed by atleast the first candidate peak; analyzing whether a non-candidate peakhaving an amplitude within similarity bounds of the first candidate peakand a lag depth less than that of the first candidate peak andassociated with a heart rate above a tachy threshold appears in theself-correlation function and, if so, determining whether thenon-candidate peak passes the picket test; and generating the confidenceaffiliated with the first estimate of cardiac rate as follows: if acandidate peak or non-candidate peak passes the picket test with atleast two pickets, placing high confidence with the first estimate ofcardiac rate; if a dominant peak is found or if a candidate peak ornon-candidate peak passes the picket test with only one picket, placingmedium confidence with the first estimate of cardiac rate; or if neithera dominant peak nor a peak passing the picket test is found, reportingan estimated cardiac rate based on the largest peak in theself-correlation function and placing low confidence in the firstestimate of cardiac rate; wherein a peak passing the picket test withtwo peaks means that there are at least first and second additionalpeaks at multiples of the lag depth of the peak under analysis in thepicket test.

A twenty-fourth non-limiting example takes the form of a method ofanalyzing cardiac signals as in the twenty-third non-limiting example,further comprising: performing R-wave detection on the sensed cardiacsignals to generate a plurality of R-wave detections; calculating asecond estimate of cardiac rate using the R-wave detections; andanalyzing the first and second estimates of cardiac rate to determinewhether a therapy is needed by: treating the first estimate of cardiacrate as more reliable than the second estimate of cardiac rate if thefirst estimate comes with high confidence; and treating the secondestimate of cardiac rate as more reliable than the first estimate ofcardiac rate if the first estimate comes with low confidence.

A twenty-fifth non-limiting example takes the form of an implantablecardiac device comprising: an implantable canister housing operationalcircuitry for performing cardiac signal analysis; and a plurality ofelectrodes coupled to the operational circuitry to provide cardiacsignals thereto; wherein the operational circuitry is configured toperform a method of cardiac signal analysis as in any of the sixteenthto twenty-fourth non-limiting examples.

Any of the first to twenty-fifth non-limiting examples may furtherinclude a Bigemini identification means or step and/or a jitteridentification means or step. Examples of Bigemini identification areshown in FIG. 16 and associated text. Additionally, examples of jitteridentification are shown in FIG. 17 and associated text.

Each of these non-limiting examples can stand on its own, or can becombined in various permutations or combinations with one or more of theother examples.

The above detailed description includes references to the accompanyingdrawings, which form a part of the detailed description. The drawingsshow, by way of illustration, specific embodiments in which theinvention can be practiced. These embodiments are also referred toherein as “examples.” Such examples can include elements in addition tothose shown or described. However, the present inventors alsocontemplate examples in which only those elements shown or described areprovided. Moreover, the present inventors also contemplate examplesusing any combination or permutation of those elements shown ordescribed (or one or more aspects thereof), either with respect to aparticular example (or one or more aspects thereof), or with respect toother examples (or one or more aspects thereof) shown or describedherein.

In the event of inconsistent usages between this document and anydocuments so incorporated by reference, the usage in this documentcontrols.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one, independent of any otherinstances or usages of “at least one” or “one or more.” In thisdocument, the term “or” is used to refer to a nonexclusive or, such that“A or B” includes “A but not B,” “B but not A,” and “A and B,” unlessotherwise indicated. In this document, the terms “including” and “inwhich” are used as the plain-English equivalents of the respective terms“comprising” and “wherein.” Also, in the following claims, the terms“including” and “comprising” are open-ended, that is, a system, device,article, composition, formulation, or process that includes elements inaddition to those listed after such a term in a claim are still deemedto fall within the scope of that claim. Moreover, in the followingclaims, the terms “first,” “second,” and “third,” etc. are used merelyas labels, and are not intended to impose numerical requirements ontheir objects.

Method examples described herein can be machine or computer-implementedat least in part. Some examples can include a computer-readable mediumor machine-readable medium encoded with instructions operable toconfigure an electronic device to perform methods as described in theabove examples. An implementation of such methods can include code, suchas microcode, assembly language code, a higher-level language code, orthe like. Such code can include computer readable instructions forperforming various methods. The code may form portions of computerprogram products. Further, in an example, the code can be tangiblystored on one or more volatile, non-transitory, or non-volatile tangiblecomputer-readable media, such as during execution or at other times.Examples of these tangible computer-readable media can include, but arenot limited to, hard disks, removable magnetic disks, removable opticaldisks (e.g., compact disks and digital video disks), magnetic cassettes,memory cards or sticks, random access memories (RAMs), read onlymemories (ROMs), and the like.

The above description is intended to be illustrative, and notrestrictive. For example, the above-described examples (or one or moreaspects thereof) may be used in combination with each other. Otherembodiments can be used, such as by one of ordinary skill in the artupon reviewing the above description. The Abstract is provided to complywith 37 C.F.R. §1.72(b), to allow the reader to quickly ascertain thenature of the technical disclosure. It is submitted with theunderstanding that it will not be used to interpret or limit the scopeor meaning of the claims.

Also, in the above Detailed Description, various features may be groupedtogether to streamline the disclosure. This should not be interpreted asintending that an unclaimed disclosed feature is essential to any claim.Rather, inventive subject matter may lie in less than all features of aparticular disclosed embodiment. Thus, the following claims are herebyincorporated into the Detailed Description as examples or embodiments,with each claim standing on its own as a separate embodiment, and it iscontemplated that such embodiments can be combined with each other invarious combinations or permutations. The scope of the invention shouldbe determined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

1. (canceled)
 2. A method of analyzing cardiac signals in a medicaldevice having a plurality of electrodes for sensing cardiac signalscoupled to operational circuitry for at least performing analysis ofsensed cardiac signals, the method comprising: generating aself-correlation function from the sensed cardiac signals, theself-correlation function having amplitudes as a function of lag depth;and identifying amplitude peaks in the self-correlation function andfinding a first estimate of cardiac rate by: identifying one or morecandidate amplitude peaks each having lag depths; selecting a candidatepeak having the least lag depth of the identified candidate peaks as afirst candidate peak; and applying a picket test to the first candidatepeak by determining whether at least one additional peak appears at asecond lag depth that is a multiple of the lag depth of the firstcandidate peak and, if so, finding that the picket test is passed forthe first candidate peak.
 3. The method of claim 2 wherein the firstestimate of cardiac rate is generated by converting the first lag depthto a time interval and converting the time interval into a rate inresponse to finding that the picket test was passed by the firstcandidate peak.
 4. The method of claim 2 further comprising: findingthat the picket test was not passed for the first candidate peak;selecting a second candidate peak; and applying the picket test to thesecond candidate peak.
 5. The method of claim 2 further comprising:finding that the picket test was not passed for at least the firstcandidate peak; identifying a largest peak in the self-correlationfunction; assessing whether the largest peak is larger than any otherpeak in the self-correlation function by at least a threshold amount;finding that the largest peak is larger than any other peak by at leastthe threshold amount; and using the lag depth of the largest peak tocalculate a the first estimate of cardiac rate.
 6. The method of claim 2further comprising: finding that the picket test was passed for thefirst candidate peak; determining that self-correlation functionincludes a non-candidate peak having a lag depth less than that of thefirst candidate peak and an amplitude within a threshold of the firstcandidate peak; determining that the non-candidate peak passes thepicket test; and calculating a cardiac rate using a lag depth of thenon-candidate peak.
 7. The method of claim 2 further comprising:performing R-wave detection on the sensed cardiac signals to generate aplurality of R-wave detections; calculating a second estimate of cardiacrate using the R-wave detections; and analyzing the first and secondestimates of cardiac rate to determine whether a therapy is needed. 8.The method of claim 2 further comprising tracking the first estimate ofcardiac rate over time to establish confidence measures if the firstestimate of cardiac rate is consistent over either a period of time or aseries of calculations.
 9. The method of claim 2 further comprisinggenerating a confidence in affiliation with the first estimate ofcardiac rate as follows: analyzing a largest peak in theself-correlation function to determine whether it is a dominant peak, ifthe picket test is not passed by at least the first candidate peak and,if the largest peak is a dominant peak, calculating the first estimateof cardiac rate using a lag depth of the dominant peak; analyzingwhether a non-candidate peak having an amplitude within similaritybounds of the first candidate peak and a lag depth less than that of thefirst candidate peak and associated with a heart rate above a tachythreshold appears in the self-correlation function and, if so,determining whether the non-candidate peak passes the picket test and,if the non-candidate peak passes the picket test, calculating the firstestimate of cardiac rate using a lag depth of the non-candidate peak;and generating the confidence affiliated with the first estimate ofcardiac rate as follows: if a candidate peak or non-candidate peakpasses the picket test with at least two pickets, placing highconfidence with the first estimate of cardiac rate; if a dominant peakis found or if a candidate peak or non-candidate peak passes the pickettest with only one picket, placing medium confidence with the firstestimate of cardiac rate; or if neither a dominant peak nor a peakpassing the picket test is found, reporting an estimated cardiac ratebased on the largest peak in the self-correlation function and placinglow confidence in the first estimate of cardiac rate; wherein a peakpassing the picket test with two peaks means that there are at leastfirst and second additional peaks at integer multiples of the lag depthof the peak under analysis in the picket test.
 10. The method of claim 9further comprising: performing R-wave detection on the sensed cardiacsignals to generate a plurality of R-wave detections; calculating asecond estimate of cardiac rate using the R-wave detections; andanalyzing the first and second estimates of cardiac rate to determinewhether a therapy is needed by: treating the first estimate of cardiacrate as more reliable than the second estimate of cardiac rate if thefirst estimate comes with high confidence; and treating the secondestimate of cardiac rate as more reliable than the first estimate ofcardiac rate if the first estimate comes with low confidence.
 11. Themethod of claim 2 further comprising checking for a pattern of peaks inthe self-correlation function consistent with Bigemini and, if so,replacing the candidate peak with a peak consistent with Bigemini. 12.The method of claim 2 further comprising checking for a pattern of peaksin the self-correlation function consistent with jitter and, if so,replacing the candidate peak with a peak consistent with jitter.
 13. Acardiac monitoring or therapy device comprising: a canister housingoperational circuitry for performing cardiac signal analysis; and aplurality of electrodes coupled to the operational circuitry to providecardiac signals thereto; wherein the operational circuitry is configuredto perform a method of cardiac signal analysis comprising: generating aself-correlation function from the sensed cardiac signals, theself-correlation function having amplitudes as a function of lag depth;and identifying amplitude peaks in the self-correlation function andfinding a first estimate of cardiac rate by: identifying one or morecandidate amplitude peaks each having lag depths; selecting a firstcandidate peak having a first lag depth by choosing a candidate peakhaving the least lag depth of the identified candidate peaks; andapplying a picket test to the first candidate peak by determiningwhether at least one additional peak appears at a second lag depth thatis a multiple of the lag depth of the first candidate peak and, if so,finding that the picket test is passed for the first candidate peak. 14.The cardiac monitoring or therapy device of claim 13 wherein theoperational circuitry is further configured such that the first estimateof cardiac rate is generated by converting the first lag depth to a timeinterval and converting the time interval into a rate in response tofinding that the picket test was passed by the first candidate peak. 15.The cardiac monitoring or therapy device of claim 13 wherein theoperational circuitry is further configured for: finding that the pickettest was not passed for at least the first candidate peak; identifying alargest peak in the self-correlation function; assessing whether thelargest peak is larger than any other peak in the self-correlationfunction by at least a threshold amount; finding that the largest peakis larger than any other peak by at least the threshold amount; andusing the lag depth of the largest peak to calculate a the firstestimate of cardiac rate.
 16. The cardiac monitoring or therapy deviceof claim 13 wherein the operational circuitry is further configured for:performing R-wave detection on the sensed cardiac signals to generate aplurality of R-wave detections; calculating a second estimate of cardiacrate using the R-wave detections; and analyzing the first and secondestimates of cardiac rate to determine whether a therapy is needed. 17.The cardiac monitoring or therapy device of claim 13 wherein theoperational circuitry is further configured for tracking the firstestimate of cardiac rate over time to establish confidence measures ifthe first estimate of cardiac rate is consistent over either a period oftime or a series of calculations.
 18. The cardiac monitoring or therapydevice of claim 13 wherein the operational circuitry is furtherconfigured for checking for a pattern of peaks in the self-correlationfunction consistent with Bigemini and, if so, replacing the candidatepeak with a peak consistent with Bigemini.
 19. The cardiac monitoring ortherapy device of claims 13 wherein the operational circuitry is furtherconfigured for checking for a pattern of peaks in the self-correlationfunction consistent with jitter and, if so, replacing the candidate peakwith a peak consistent with jitter.
 20. A medical device comprisingsensing electrodes for obtaining cardiac signals, sensing circuitry foranalyzing obtained cardiac signals, and a processor and a non-transitorymedium with instructions contained therein for implementation by theprocessor, the processor configured to operate on the instructions touse the sensing circuitry as follows: generating a self-correlationfunction from the sensed cardiac signals, the self-correlation functionhaving amplitudes as a function of lag depth; and identifying amplitudepeaks in the self-correlation function and finding a first estimate ofcardiac rate by: identifying one or more candidate amplitude peaks eachhaving lag depths; selecting a first candidate peak having a first lagdepth by choosing a candidate peak having the least lag depth of theidentified candidate peaks; and applying a picket test to the firstcandidate peak by determining whether at least one additional peakappears at a second lag depth that is a multiple of the lag depth of thefirst candidate peak and, if so, finding that the picket test is passedfor the first candidate peak.
 21. The medical device of claim 20 whereinthe processor is configured to operate on the instructions to furtheruse the sensing circuitry as follows: performing R-wave detection on thesensed cardiac signals to generate a plurality of R-wave detections;calculating a second estimate of cardiac rate using the R-wavedetections; and analyzing the first and second estimates of cardiac rateto determine whether an arrhythmia is occurring.